package com.itheima.mapper;

import com.itheima.common.entity.QueryPageBean;
import com.itheima.pojo.CheckItem;
import com.itheima.pojo.Setmeal;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Options;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface SetmealMapper {

    /**
     * @param queryPageBean
     * @return
     */
    //套餐管理 分页查询
    List<CheckItem> findPage(QueryPageBean queryPageBean);

    //套餐管理 新增套餐
    //主键返回
    @Options(useGeneratedKeys = true,keyProperty = "id")//主键返回
    @Insert("insert into t_setmeal(name,code,helpCode,sex,price,remark,attention,img) " +
            "values (#{name},#{code},#{helpCode},#{sex},#{price},#{remark},#{attention},#{img})")
    void add(Setmeal setmeal);

    //套餐管理 查询所有套餐(没有理解)
    @Select("select * from t_setmeal")
    List<Setmeal> select();

    //套餐管理 根据套餐id查询套餐信息和套餐关联的检查组信息(没有理解)
    Setmeal getWithGroupAndItmById(Integer setmealId);

    @Select("select * from t_setmeal where id=#{id}")
    Setmeal findById(Integer id);

    //套餐管理 修改套餐
    void update(Setmeal setmeal);

    //套餐管理 删除套餐
    @Select("delete from t_setmeal where id=#{id}")
    void delete(Integer id);
}
